import threading
import time

class new_class:
    # 定义一个需要异步执行的函数
    def outer(self,message, delay):
        def async_function():
            print(f"异步任务开始: {message}")
            time.sleep(delay)  # 模拟耗时操作
            print(f"异步任务完成: {message}")
        threading.Thread(target=async_function).start()


    # 定义一个主函数，它会执行一些逻辑并在其中启动异步任务
    def main_function(self):
        print("主函数开始执行")

        # 主要逻辑代码...
        for i in range(3):
            print(f"主函数正在处理主要逻辑...{i + 1}")
            time.sleep(1)  # 模拟耗时操作

        # 在这里启动异步任务，不等待它完成
        message = "这是一个异步消息"
        delay = 4  # 异步任务的延迟时间
        self.outer(message,delay)

        # 主要逻辑继续执行
        for i in range(3, 6):
            print(f"主函数继续处理主要逻辑...{i + 1}")
            time.sleep(1)  # 模拟耗时操作

        print("主函数结束执行")

        # 如果你需要确保异步任务在主函数结束前完成，可以在这里加入join
        # thread.join()  # 等待异步任务完成


if __name__ == "__main__":
    new_class().main_function()